import java.util.Arrays;
import java.util.Scanner;

public class Test0428 {
    static boolean[] chick;
    static int count = 0;
    static int n1;
    public static void main(String[] args) {
		boolean b=main1();
		System.out.println(b);
	}
    public static boolean main1() {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        int[] arr = new int[n];
        for (int i = 0; i < n; i++) {
            arr[i] = in.nextInt();
        }
        Arrays.sort(arr);
        int ret = 0;
        for (int i = 0; i < n; i++) {
            ret += arr[i];
        }
        if (ret % 2 != 0) {
           return false;
        }
        ret = ret / 2;
        n1 = n;
        
        chick = new boolean[n];
        for (int i = 0; i < n; i++) {
            if (chick[i] != true) {
                count += arr[i];
                chick[i] = true;
                if (dfs(arr, ret, i))return true;
                count -= arr[i];
                chick[i] = false;
            }
        }
       return false;
    }

    static boolean dfs(int[] arr, int ret, int pos) {
        if (count == ret) {
            return true;
        }
        if(count>ret) {
        	return false;
        }
        for (int i = 0; i < n1; i++) {
            if (chick[i] != true) {
                count += arr[i];
                chick[i] = true;
                if (dfs(arr, ret, i))return true;
                count -= arr[i];
                chick[i] = false;
            }
        }
        return false;
    }
}
